package cn.iluwen.airline.DTOs.admin.response;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 注册记录列表响应DTO（管理员用）
 */
@Data
@Schema(description = "注册记录列表响应（分页）")
public class RegistrationListResponse {
    
    @Schema(description = "总记录数")
    private Long total;
    
    @Schema(description = "总页数")
    private Integer pages;
    
    @Schema(description = "当前页码")
    private Integer pageNum;
    
    @Schema(description = "每页记录数")
    private Integer pageSize;
    
    @Schema(description = "注册记录列表")
    private List<RegistrationItem> list;
    
    /**
     * 注册记录列表项
     */
    @Data
    @Schema(description = "注册记录列表项")
    public static class RegistrationItem {
        
        @Schema(description = "注册记录ID")
        private String registrationId;
        
        @Schema(description = "用户ID")
        private String userId;
        
        @Schema(description = "用户名")
        private String username;
        
        @Schema(description = "注册时间")
        private LocalDateTime registrationDate;
        
        @Schema(description = "注册IP")
        private String registrationIp;
        
        @Schema(description = "注册来源")
        private String registrationSource;
    }
} 